其他
100多次竞赛后,他研发了一个几乎可以解决所有机器学习问题的框架
(图片由AI科技大本营付费下载自视觉中国)
作者 | XI YANG
来源 | 知乎(机器学习之路)
Kaggle是一个数据科学竞赛的平台,很多公司会发布一些接近真实业务的问题,吸引爱好数据科学的人来一起解决,可以通过这些数据积累经验,提高机器学习的水平。
第一步:识别问题 第二步:分离数据 第三步:构造提取特征 第四步:组合数据 第五步:分解 第六步:选择特征 第七步:选择算法进行训练
最方便的就是安装 Anaconda,这里面包含大部分数据科学所需要的包,直接引入就可以了,常用的包有:
pandas:常用来将数据转化成 dataframe 形式进行操作 scikit-learn:里面有要用到的机器学习算法模型 matplotlib:用来画图 以及 xgboost,keras,tqdm 等。
第一步:识别问题
第二步:分离数据
用 Training Data 来训练模型,用 Validation Data 来检验这个模型的表现,不然的话,通过各种调节参数,模型可以在训练数据集上面表现的非常出色,但是这可能会是过拟合,过拟合就是太依赖现有的数据了,拟合的效果特别好,但是只适用于训练集,以致于来一个新的数据,就不知道该预测成什么了。所以需要有 Validation 来验证一下,看这个模型是在那里自娱自乐呢,还是真的表现出色。
分类问题用 StrtifiedKFold
from sklearn.cross_validation import StratifiedKFold
回归问题用 KFold
from sklearn.cross_validation import KFold
第三步:构造特征
record 1: 性别 女
record 2:性别 女
record 3:性别 男
女 男
record 1: 1 0
record 2:1 0
record 3:0 1
from sklearn.preprocessing import LabelEncoder
from sklearn.preprocessing import OneHotEncoder
第四步:组合数据
import numpy as np
X = np.hstack((x1, x2, ...))
from scipy import sparse
X = sparse.hstack((x1, x2, ...))
RandomForestClassifier RandomForestRegressor ExtraTreesClassifier ExtraTreesRegressor XGBClassifier XGBRegressor
第五步:分解
from sklearn.decomposition import PCA
对于文字数据,在转化成稀疏矩阵之后,可以用 SVD
from sklearn.decomposition import TruncatedSVD
第六步:选择特征
from sklearn.ensemble import RandomForestClassifier
或者 xgboost:
import xgboost as xgb
对于稀疏的数据,一个比较有名的方法是 chi-2:
from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import chi2
第七步:选择算法进行训练
Random Forest
GBM
Logistic Regression
Naive Bayes
Support Vector Machines
k-Nearest Neighbors
Regression
Random Forest
GBM
Linear Regression
Ridge
Lasso
SVR
为什么那么多算法里,只提出这几个算法呢,这就需要对比不同算法的性能了。
这篇神文 Do we Need Hundreds of Classifiers to Solve Real World Classification Problems 测试了179种分类模型在UCI所有的121个数据上的性能,发现Random Forests 和 SVM 性能最好。
我们可以学习一下里面的调研思路,看看是怎么样得到比较结果的,在我们的实践中也有一定的指导作用。
原文链接:
https://zhuanlan.zhihu.com/p/61657532
◆
精彩推荐
◆
推荐阅读
王霸之路:从0.1到2.0,一文看尽TensorFlow“奋斗史”
伯克利人工智能研究院开源深度学习数据压缩方法Bit-Swap,性能创新高
NLP被英语统治?打破成见,英语不应是「自然语言」同义词
TensorFlow2.0正式版发布,极简安装TF2.0(CPU&GPU)教程
肖仰华:知识图谱构建的三要素、三原则和九大策略 | AI ProCon 2019
微软语音AI技术与微软听听文档小程序实践 | AI ProCon 2019
AI落地遭“卡脖子”困境:为什么说联邦学习是解决良方?
10分钟搭建你的第一个图像识别模型 | 附完整代码
限时早鸟票 | 2019 中国大数据技术大会(BDTC)超豪华盛宴抢先看!
你点的每个“在看”,我都认真当成了喜欢